package com.github_dididipapa.mall.product.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github_dididipapa.common.to.component.Attr;
import com.github_dididipapa.common.utils.PageUtils;
import com.github_dididipapa.mall.product.entity.AttrEntity;
import com.github_dididipapa.mall.product.entity.ProductAttrValueEntity;
import com.github_dididipapa.mall.product.vo.AttrVo;

import java.util.List;
import java.util.Map;

/**
 * 商品属性
 *
 * @author dididipapa
 * @email not_found@404.com
 * @date 2025-04-26 18:14:11
 */
public interface AttrService extends IService<AttrEntity> {

    PageUtils queryPage(Map<String, Object> params);

    void saveAttr(AttrVo attr);

    PageUtils getBaseAttrPage(Map<String, Object> params, Long catelogId);

    PageUtils getByCategoryId(Map<String, Object> params, Long catelogId);


    List<ProductAttrValueEntity> getBaseAttrListForSpu(Long spuId);

    AttrVo getAttrInfo(Long attrId);

    void updateByAttrVo(AttrVo attr);

    PageUtils getNoAttrByAttrGroupId(Long attrGroupId, Map<String, Object> params);


    List<Long> getBaseAttrs(List<Long> attrIds);


}

